﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using конфигуратор;

namespace Wpfконфигуратор.Визуализаторы
{
    public class ПаспортВизуализатор  : ВизуализаторОснова
    {
        private readonly Паспорт _паспорт;
        public ПаспортВизуализатор(Паспорт паспорт)
        {
            _паспорт = паспорт;
        }

        public string Имя { get { return _паспорт.Имя; } set { _паспорт.Имя = value; ОбновитьСвойство( "Имя" ); } }

        public object Объект { get { return _паспорт.Объект; } 
            set { _паспорт.Объект = value; ОбновитьСвойство( "Объект" ); } }

        private ВизуализаторОснова _визуализаторОбъекта;
        public ВизуализаторОснова ВизуализаторОбъекта
        {
            get
            {
                return _визуализаторОбъекта ?? (_визуализаторОбъекта =
                                                ВыборВизуализатора.Выбрать(
                                                    ДинамикОбъект.ПоляОбъекта.Find(п => п.ИмяПоля == "Объект")));
            }
        }

        private ДинамикОбъект _динамикОбъект;
        public ДинамикОбъект ДинамикОбъект
        {
            get { return _динамикОбъект ?? (_динамикОбъект = new ДинамикОбъект(_паспорт.Объект)); }
        }


    }
}
